/*
 * @Description: In User Settings Edit
 * @Author: your name
 * @Date: 2019-08-22 09:06:38
 * @LastEditTime: 2019-08-22 10:45:09
 * @LastEditors: Please set LastEditors
 */
const puppeteer = require('puppeteer')
const url =`https://movie.douban.com/tag/#/`
const sleep = time =>new Promise(resolve =>{
    setTimeout(resolve,time)
})
console.log(111);

(async ()=>{
    console.log('start visit page');
    const browser=await puppeteer.launch({
        args:['--no-sandbox'],
        dumpio:false
    })
    const page = await browser.newPage()
    await page.goto(url,{
        waitUntil:'networkidle2'
    })
    await sleep(3000)
    await page.waitForSelector('.more')
    for(let i=0;i<1;i++){
        await sleep(3000)
        await page.click('.more')
    }
    const result = await page.evaluate(()=>{
        var $=window.$;
        var items = $('.list-wp a')
        var links=[]
        if(items.length>=1){
            items.each((index,item)=>{
                let it =$(item)
                let doubanId = it.find('div').data('id')
                let title = it.find('.title').text();
                let rate = Number(it.find('.rate').text());
                let poster = it.find('img').attr('src').replace('s_ratio','l_ratio')
                links.push({
                    doubanId,
                    title,
                    rate,
                    poster
                })
            })
        }
        return links
    })
    browser.close()
    process.send({result})
    process.exit(0)
    console.log(result)
    
})()
